package org.abc.fund.repository.user;

import org.abc.fund.entity.user.User;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;

import java.util.Optional;

@Repository
public interface UserRepository extends JpaRepository<User, Long> {
  /**
   * 根据用户名查找用户
   *
   * @param username 用户名
   * @return 一个包含用户（如果找到）的Optional
   */
  Optional<User> findByUsername(String username);

  /**
   * 检查用户名是否存在
   *
   * @param username 用户名
   * @return 如果存在返回true，否则返回false
   */
  boolean existsByUsername(String username);

  /**
   * 检查邮箱是否存在
   *
   * @param email 邮箱
   * @return 如果存在返回true，否则返回false
   */
  boolean existsByEmail(String email);
}
